package io.renren.modules.news.dao;

import io.renren.modules.sys.dto.NewsDto;
import io.renren.modules.news.entity.Comment;
import io.renren.modules.news.entity.News;
import io.renren.modules.news.controller.UserNewsCollection;
import io.renren.modules.news.entity.reply;

import java.util.List;
import java.util.Map;

public interface NewsDao {
    List getNewsList();

    News getNews(long newsId);

    void updateNewsReadCount(News n);

    List getNewsCommentList(Long newsId);

    List getThisNewsAndCommentReply(NewsDto newsDto);

    List getNewsByType(Map params);

    void updateNewsImageCount(News newss);

    List getNewsLike(Map<String,Object> params);

    void insertComment(Comment comment);

    void insertReply(reply reply);

    void addUserNewsCollection(UserNewsCollection userNewsCollection);

    void delUserNewsCollection(UserNewsCollection userNewsCollection);

    List getUserNewsCollection(Map map);

    List checkIsCollectionNews(Map map);

    long getCommentLikeCount(long commentId);

    void saveCommentLike(Map map);

    void updateCommentLike(Map map);

    void delCommentLike(Map map);

    void deleteCommentLike(Map map);

    List checkCommentLike(Map map);

    List getNewsType();

    List getNewsByTypeNoPage(Map<String, Object> params);

    Integer getNewsCount(Map<String, Object> params);
}
